<?php
$salt="ETK-VGTU+_)(*&^%$#!".$username;
/*
function cryptpass($pass,$salt){
$spec=array('~','!','@','#','$','%','^','&','*','?');
$crypted=md5(md5($salt).md5($pass));
$c_text=md5($pass);
for ($i=0;$i<strlen($crypted);$i++){
if (ord($c_text[$i])>=48 and ord($c_text[$i])<=57){
@$temp.=$spec[$c_text[$i]];
} elseif(ord($c_text[$i])>=97 and ord($c_text[$i])<=100){
@$temp.=strtoupper($crypted[$i]);}
else
{@$temp.=$crypted[$i];}}
return md5($temp);}
*/

function cryptpass($pass,$salt){
	
$symb=array('~','!','@','#','$','%','^','&','*','?');
	for ($li=0;$li<strlen($pass);$li++){
		$ord=ord($pass[$li]);
	if ($ord>=48 and $ord<=57)
		{$passi.=$symb[$pass[$li]];} 
	else
		{$passi.=$pass[$li];}}	
		
for ($i=1;$i<=32;$i++) {
	 for ($ii=1;$ii<=32;$ii++) {
	  $u=$i*$ii;
	 $salt=md5($salt.$passi);
	 $c=chr($u);
	 
	if(!preg_match('/[^0-9]/ui',$c)) {
		 $salt=md5(md5($c).md5($u).md5($i).md5($ii).md5($salt));
		 $q=substr($salt,0,1);
		 if(!preg_match('/[^0-9]/ui',$q)) {
			  for ($qw=1;$qw<=$q;$qw++) {
				  $salt=md5(md5($c).md5($u).md5($i).md5($ii).md5($salt));
			  }}}
	elseif(!preg_match('/[^A-Za-z]/ui',$c)) {
		 $salt=md5(md5(md5($c).md5($u).md5($i).md5($ii).md5($salt)));
		 $q=substr($salt,0,1);
		 if(!preg_match('/[^0-9]/ui',$q)) {
			  for ($qwe=1;$qwe<=$q;$qwe++) {
				  $salt=md5(md5(md5($c).md5($u).md5($i).md5($ii).md5($salt)));
			  }}}
	else {
		 $salt=md5(md5(md5(md5($c).md5($u).md5($i).md5($ii).md5($salt))));
		 $q=substr($salt,0,1);
		 if(!preg_match('/[^0-9]/ui',$q)) {
			  for ($qwer=1;$qwer<=$q;$qwer++) {
				  $salt=md5(md5(md5(md5($c).md5($u).md5($i).md5($ii).md5($salt))));
			  }}}
		 
 $code=md5(md5($passi).md5($salt));
 }};
 
 return $code;
 }

?>